package com.tool.mylibrary.network.HttpRequest.interfaces;

import java.io.File;
import java.util.List;
import java.util.Map;

/**
 * 文件名: IRequest.java
 * 描述：
 * Create by Google on 2018/6/27 18:13
 */

public interface IRequest {

    /**
     * get请求 无参
     * @param url
     * @param iRequestCallback
     */

    void get(String url, IRequestCallback iRequestCallback);

    /**
     * get 请求 有参数
     * @param url
     * @param params
     * @param iRequestCallback
     */
    void get(String url, Map<String, String> params, IRequestCallback iRequestCallback);

    /**
     * get 请求 有header
     * @param url
     * @param headers
     * @param params
     * @param iRequestCallback
     */
    void get(String url,Map<String, String> headers, Map<String, String> params,IRequestCallback iRequestCallback);

    /**
     * post 请求 有参，无header，参数可为null
     * @param url
     * @param params
     * @param iRequestCallback
     */
    void post(String url, Map<String, String> params, IRequestCallback iRequestCallback);

    /**
     * post请求 有参 有文件
     * @param url
     * @param params
     * @param fileKey
     * @param files
     * @param iRequestCallback
     */
    void post(String url, Map<String, String> params, String fileKey,List<File> files,IRequestCallback iRequestCallback);
    void post(String url,Map<String, String> headers, Map<String, String> params,IRequestCallback iRequestCallback);
    void post(String url,Map<String, String> headers, Map<String, String> params, String fileKey,List<File> files,IRequestCallback iRequestCallback);


}
